En PHP, `include` et `require` sont deux instructions utilisées pour inclure et exécuter des fichiers externes dans un script. Bien qu’ils servent des objectifs similaires, il existe des différences cruciales entre eux en termes de comportement et de gestion des erreurs.
```
include ‘fichier1.php’;
echo ‘Ce message sera affiché même si fichier1.php ne peut pas être inclus.’;
```
Dans cet exemple, si `fichier1.php` n’existe pas, PHP affichera un avertissement, mais la phrase “Ce message sera affiché même si fichier1.php ne peut pas être inclus.” sera tout de même exécutée.
```
require ‘fichier2.php’;
echo ‘Ce message ne sera pas affiché si fichier2.php ne peut pas être inclus.’;
```
Dans ce cas, si `fichier2.php` n’existe pas, une erreur fatale sera générée et la phrase suivante ne sera pas affichée.
`include` est souvent utilisé quand :
- Le fichier à inclure n’est pas essentiel au fonctionnement du script principal.
- Vous désirez que le script continue à s’exécuter même si le fichier externe est manquant.
Par exemple, pour inclure facultativement un fichier de fonctions additionnelles :
```
include ‘fonctions_supplementaires.php’;
// Le script principal continue de fonctionner même sans les fonctions supplémentaires.
```
`require` est préféré quand :
- Le fichier externe est crucial au fonctionnement de l’application.
- L’absence du fichier devrait arrêter l’exécution pour éviter des erreurs de traitement graves.
Par exemple, pour inclure un fichier de configuration essentiel :
```
require ‘config.php’;
// Le script principal dépend des paramètres configurés dans config.php.
```
Les différences détaillées entre `include` et `require`, ainsi que les comportements associés ont été documentées dans la documentation officielle de PHP, qui constitue une source fiable et complète pour la plupart des fonctions et concepts de PHP.
- Documentation officielle sur `include` : [PHP.net – include](https://www.php.net/manual/fr/function.include.php)
- Documentation officielle sur `require` : [PHP.net – require](https://www.php.net/manual/fr/function.require.php)
En conclusion, bien que `include` et `require` soient utilisés pour inclure des fichiers externes en PHP, le choix entre les deux devrait être guidé par l’importance du fichier inclus pour l’exécution globale du script. `include` est plus tolérant aux erreurs, alors que `require` est strict et empêche la poursuite du script en cas de problème.